Position

class Position : GeneratedMessage, MeshProtos.PositionOrBuilder

A GPS Position
Protobuf type meshtastic.Position

Types

Link copied to clipboard
enum AltSource : ProtocolMessageEnum

How the altitude was acquired: manual, GPS int/ext, etc
Default: same as location_source if present
Protobuf enum meshtastic.Position.AltSource
Link copied to clipboard
class Builder : GeneratedMessage.Builder<BuilderT> , MeshProtos.PositionOrBuilder

A GPS Position
Protobuf type meshtastic.Position
Link copied to clipboard
enum LocSource : ProtocolMessageEnum

How the location was acquired: manual, onboard GPS, external (EUD) GPS
Protobuf enum meshtastic.Position.LocSource

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open fun equals(obj: Any): Boolean
Link copied to clipboard
open fun getAltitude(): Int

In meters above MSL (but see issue #359)
optional int32 altitude = 3;
Link copied to clipboard

Geoidal separation in meters
optional sint32 altitude_geoidal_separation = 10;
Link copied to clipboard
open fun getAltitudeHae(): Int

HAE altitude in meters - can be used instead of MSL altitude
optional sint32 altitude_hae = 9;
Link copied to clipboard

TODO: REPLACE
.meshtastic.Position.AltSource altitude_source = 6;
Link copied to clipboard

TODO: REPLACE
.meshtastic.Position.AltSource altitude_source = 6;
Link copied to clipboard
Link copied to clipboard
fun getDescriptor(): Descriptors.Descriptor
Link copied to clipboard
open fun getFixQuality(): Int

GPS fix quality (from NMEA GxGGA statement or similar)
uint32 fix_quality = 17;
Link copied to clipboard
open fun getFixType(): Int

GPS fix type 2D/3D (from NMEA GxGSA statement)
uint32 fix_type = 18;
Link copied to clipboard
open fun getGpsAccuracy(): Int

GPS accuracy (a hardware specific constant) in mm
multiplied with DOP to calculate positional accuracy
Default: "'bout three meters-ish" :)
uint32 gps_accuracy = 14;
Link copied to clipboard
open fun getGroundSpeed(): Int

Ground speed in m/s and True North TRACK in 1/100 degrees
Clarification of terms:
- "track" is the direction of motion (measured in horizontal plane)
- "heading" is where the fuselage points (measured in horizontal plane)
- "yaw" indicates a relative rotation about the vertical axis
TODO: REMOVE/INTEGRATE
optional uint32 ground_speed = 15;
Link copied to clipboard
open fun getGroundTrack(): Int

TODO: REPLACE
optional uint32 ground_track = 16;
Link copied to clipboard
open fun getHDOP(): Int

TODO: REPLACE
uint32 HDOP = 12;
Link copied to clipboard
open fun getLatitudeI(): Int

The new preferred location encoding, multiply by 1e-7 to get degrees
in floating point
optional sfixed32 latitude_i = 1;
Link copied to clipboard

TODO: REPLACE
.meshtastic.Position.LocSource location_source = 5;
Link copied to clipboard

TODO: REPLACE
.meshtastic.Position.LocSource location_source = 5;
Link copied to clipboard
open fun getLongitudeI(): Int

TODO: REPLACE
optional sfixed32 longitude_i = 2;
Link copied to clipboard
open fun getNextUpdate(): Int

Estimated/expected time (in seconds) until next update:
- if we update at fixed intervals of X seconds, use X
- if we update at dynamic intervals (based on relative movement etc),
but "AT LEAST every Y seconds", use Y
uint32 next_update = 21;
Link copied to clipboard
Link copied to clipboard
open fun getPDOP(): Int

Horizontal, Vertical and Position Dilution of Precision, in 1/100 units
- PDOP is sufficient for most cases
- for higher precision scenarios, HDOP and VDOP can be used instead,
in which case PDOP becomes redundant (PDOP=sqrt(HDOP^2 + VDOP^2))
TODO: REMOVE/INTEGRATE
uint32 PDOP = 11;
Link copied to clipboard
open fun getPrecisionBits(): Int

Indicates the bits of precision set by the sending node
uint32 precision_bits = 23;
Link copied to clipboard
open fun getSatsInView(): Int

GPS "Satellites in View" number
uint32 sats_in_view = 19;
Link copied to clipboard
open fun getSensorId(): Int

Sensor ID - in case multiple positioning sensors are being used
uint32 sensor_id = 20;
Link copied to clipboard
open fun getSeqNumber(): Int

A sequence number, incremented with each Position message to help
detect lost updates if needed
uint32 seq_number = 22;
Link copied to clipboard
Link copied to clipboard
open fun getTime(): Int

This is usually not sent over the mesh (to save space), but it is sent
from the phone so that the local device can set its time if it is sent over
the mesh (because there are devices on the mesh without GPS or RTC).
seconds since 1970
fixed32 time = 4;
Link copied to clipboard
open fun getTimestamp(): Int

Positional timestamp (actual timestamp of GPS solution) in integer epoch seconds
fixed32 timestamp = 7;
Link copied to clipboard

Pos. timestamp milliseconds adjustment (rarely available or required)
int32 timestamp_millis_adjust = 8;
Link copied to clipboard
open fun getVDOP(): Int

TODO: REPLACE
uint32 VDOP = 13;
Link copied to clipboard
open fun hasAltitude(): Boolean

In meters above MSL (but see issue #359)
optional int32 altitude = 3;
Link copied to clipboard

Geoidal separation in meters
optional sint32 altitude_geoidal_separation = 10;
Link copied to clipboard

HAE altitude in meters - can be used instead of MSL altitude
optional sint32 altitude_hae = 9;
Link copied to clipboard

Ground speed in m/s and True North TRACK in 1/100 degrees
Clarification of terms:
- "track" is the direction of motion (measured in horizontal plane)
- "heading" is where the fuselage points (measured in horizontal plane)
- "yaw" indicates a relative rotation about the vertical axis
TODO: REMOVE/INTEGRATE
optional uint32 ground_speed = 15;
Link copied to clipboard

TODO: REPLACE
optional uint32 ground_track = 16;
Link copied to clipboard
open fun hashCode(): Int
Link copied to clipboard
open fun hasLatitudeI(): Boolean

The new preferred location encoding, multiply by 1e-7 to get degrees
in floating point
optional sfixed32 latitude_i = 1;
Link copied to clipboard

TODO: REPLACE
optional sfixed32 longitude_i = 2;
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun parseDelimitedFrom(input: InputStream, extensionRegistry: ExtensionRegistryLite): MeshProtos.Position
Link copied to clipboard
open fun parseFrom(data: ByteString): MeshProtos.Position
open fun parseFrom(input: CodedInputStream): MeshProtos.Position
open fun parseFrom(data: Array<Byte>, extensionRegistry: ExtensionRegistryLite): MeshProtos.Position
open fun parseFrom(data: ByteString, extensionRegistry: ExtensionRegistryLite): MeshProtos.Position
open fun parseFrom(input: CodedInputStream, extensionRegistry: ExtensionRegistryLite): MeshProtos.Position
open fun parseFrom(input: InputStream, extensionRegistry: ExtensionRegistryLite): MeshProtos.Position
open fun parseFrom(data: ByteBuffer, extensionRegistry: ExtensionRegistryLite): MeshProtos.Position
Link copied to clipboard
open fun parser(): Parser<MeshProtos.Position>
Link copied to clipboard
Link copied to clipboard
open fun writeTo(output: CodedOutputStream)